package com.example.kotlin.jetpack_compose_by_tutorials

import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material.*
import androidx.compose.runtime.Composable
import androidx.compose.runtime.MutableState
import androidx.compose.ui.res.colorResource
import androidx.compose.ui.text.font.FontStyle
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.input.KeyboardType
import androidx.compose.ui.unit.sp
import com.example.myapplication.R
import com.example.kotlin.theme.Green300

/**
 *Create by Fanketly on 2022/9/15
 *Gitee:https://gitee.com/fanketly
 *desc:展示常用属性
 */
@Composable
fun MyText(text: String) {
    Text(
        text = text,
        fontStyle = FontStyle.Italic,
        color = colorResource(
            id = R.color.teal_200
        ),
        fontSize = 30.sp,
        fontWeight = FontWeight.Bold
    )
}

@Composable
fun MyTextFiled(textValue: MutableState<String>) {
    // 您还将状态包装到 remember () 中 ， 这是 Compose 告诉重构器该值应该通过重构持久化的方式 。
    //如果你在这里没有使用 remember() ，每次你改变状态时，它都会丢失并设置为默认值——一个空字符串。
//    val textValue = remember{
//        mutableStateOf("")
//    }
    val primaryColor = Green300
    OutlinedTextField(
        value = textValue.value,
        onValueChange = {
            textValue.value = it
        },
        label = {
            Text(text = "email")
        },
        colors = TextFieldDefaults.outlinedTextFieldColors(
            focusedBorderColor = primaryColor,
            focusedLabelColor = primaryColor,
            cursorColor = primaryColor
        ),
//keyboardOptions：设置KeyboardType、ImeAction等键盘选项。一些可用的键盘类型是：电子邮件、密码和数字，
// 而重要的 ImeAction 是：Go、Search、Previous、Next 和 Done。
        keyboardOptions = KeyboardOptions.Default.copy(keyboardType = KeyboardType.Email)
    )


}